1. Field of the Invention
The present invention relates, in general, to a method for adjusting a transmission rate to obtain the optimum transmission rate in an ad hoc network environment, and more particularly, to a method for adjusting a transmission rate to obtain the optimum transmission rate appropriate for an ad hoc network environment wherein an upper threshold and a lower threshold are set by calculating a difference (Diff) between a current transmission rate (cur_bw) and a previous transmission rate (base_bw), and a standard variation (basebw_var) of the previous transmission rate, wherein a congestion window (hereinafter referred to as “cwnd”) increases or decreases depending upon the result of the comparison between the Diff and the dimension of the upper and lower thresholds, and the previous transmission rate is then updated to the current transmission rate.
2. Description of the Related Art
There are several related art materials. Korean Patent Unexamined Publication No. 10-2001-0058119 relates to a method for controlling congestion of a TCP (Transmission Control Protocol) Vegas, thereby improving a convergence speed of TCP Vegas, with consideration of exponential increase and decrease of a CWND (Congestion Window) as well as linear increase and decrease thereof, and, finally, enhancing the TCP performance
Korean Patent Unexamined Publication No. 10-2003-044465 relates to a method for controlling congestion of a transmission control protocol (TCP) by use of TCP Vegas to thereby decrease abrupt congestion of the network and allow the network to be used in an efficient manner by adding x1 and x2 to α and β.
US Utility Patent Unexamined Publication No. 2002-0154602 relates to a method for improving TCP performance over wireless links, and JP Patent Unexamined Publication No. 11-177618 relates to a method for controlling congestion to attain impartiality of band reservation between a band according to the Reno algorithm and other bands according to other algorithms, intermingled with each other on the same network where reduction rate of a CWND is changed by use of a selective acknowledgement (SACK).
A mobile ad hoc network (hereinafter referred to as “MANET”) environment refers to a network environment wherein a network is constructed dynamically when necessary without any fixed infrastructure is constructed based on mobile terminals. FIG. 1 is a diagram illustrating a concept of an ad hoc network system. In the MANET employing IEEE802.11, all nodes share a communication channel. Accordingly, all the nodes within the same communication region make communication through the same channel, for which data are likely to be collided and lost in the course of transmission. Also, reliability in transmission on the link layer would be sharply deteriorated due to an inherent feature of the wireless network. A transmitter transmits a packet to a receiver and the receiver transmits an acknowledgement (ACK)-response packet to the received packet to the transmitter. Since the ACK-response packet contains information on the maximum values of the sequence numbers of subsequent packets received at that time, the data amount transmitted by the transmitter should not be reduced even when a part of the ACK-response packet is lost.
Transmission control protocol (TCP) is in the transport layer among Transmission control protocol/Internet protocol (TCP/IP) architectures and mainly functions to control flow and error of data. If data to be transmitted is stored in a buffer by an application program, data equal to a window in size is only transmitted by the TCP. At this time, the window size is determined depending upon a destination host or a congestion of the network and may increase or decrease. By using this concept of a window, utilization of the wireless link can be maximized.
In a conventional TCP congestion control algorithm, the congestion is abruptly generated because of a simple exponential increase of the transmission rate in the first stage, and the network has not been so efficiently used because of unconditional reduction of the transmission rate by half in the congestion state.
FIG. 2A is a graph showing a change in transmission rate in TCP-Reno version according to a conventional art and FIG. 2B is a graph showing a change in transmission rate in TCP-Vegas version according to a conventional art. In the conventional TCP, adjustment of transmission rate is performed through two phases.
The first phase is called a slow start phase during which any bandwidth available for use is probed (see FIG. 2A). A state of the network is monitored by increasing the data amount to be transmitted at high speed until any available bandwidth is located. If the data amount exceeds a threshold for a slow start (ssthreshold) defined in advance while it is on the increase, this phase is entered into a phase to control the data amount to be transmitted, depending upon the state of the network, called a congestion avoidance phase under which the data amount for transmission increases slowly.
In the slow start phase, the previous congestion window (cwnd) increases twice per round trip time (hereinafter referred as “RTT”), i.e., time consumed in round trip transmission of data. Meanwhile, the cwnd increases so that data is transmitted in addition to one packet per RTT in the congestion avoidance phase.
In the TCP-Vegas version, the maximum bandwidth available for use and the bandwidth currently in use are calculated based on the RTT. Where the bandwidth currently in use is far less than the maximum bandwidth available for use, the TCP strives to use the bandwidth at maximum by increasing the transmission rate. Where the bandwidth currently in use is approximate to the maximum bandwidth, the TCP strives to maintain packets as small as possible in the network by decreasing the transmission rate. This is illustrated in FIG. 2B.
However, this conventional transmission method controls the transmission rate only when packet loss occurs due to inevitable transmission of excessive data over the data amount available for transmission to the network, for which there is a big load to the network. Especially, in terms of the property of an ad hoc network, the amount of data available for transmission largely varies depending upon the circumstances, differently from a wired network. The link layer has a technique to avoid collision and a mechanism for retransmission as well, and thus, to increase the transmission rate consecutively until the packet loss is generated would give the whole network a big load and causes consecutive timeouts of the TCP. This operation would result in a sharply deteriorating efficiency of the network resource.
FIG. 3 is a table showing comparison between TCP-Reno version and TCP-Vegas version according to a conventional art in terms of the number of transmission failure packets. The transmission rate controlling method such as the TCP-Vegas version is very advantageous in an ad hoc network. However, it can be understand from the table shown in FIG. 3 that this TCP-Vegas shows no big difference from the TCP-Reno version in the number of packets discarded in the network.
Since the network resource has been used but it failed in transmission, the network resource has not efficiently been used. Further, failure of the transmission causes transmission of other sessions to be obstructed. Where any background traffic exists in the ad hoc network, the problems described above would be further worsened. In the case of TCP-Vegas version, since the time until an ACK packet reaches is measured in RTT, generation of the ACK packet is maintained with the level in existing wired network, and thus, there would be excessive use of wireless network resources versus the actual need thereof. Also, data amount for transmission is controlled on this basis, and it is not reasonable to correct this error.